package com.tjsinfo.tjsoa.documentationflow.dangweifawen.action;

import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.json.JSONArray;
import org.json.JSONObject;
import com.tjsinfo.tjsoa.documentationflow.dangweifawen.bo.ITDangweifawenNeirongBO;
import com.tjsinfo.tjsoa.documentationflow.dangweifawen.vo.TDangweifawenNeirong;
import com.tjsinfo.tjsoa.workflow.WorkFlowTemplate;


/**
 * 党委发文管理查询发文
 * @author Administrator
 *
 */
public class AdminselectAction extends Action{
	private ITDangweifawenNeirongBO dangweifawenNeirongBO;
	
	


	public ITDangweifawenNeirongBO getDangweifawenNeirongBO() {
		return dangweifawenNeirongBO;
	}




	public void setDangweifawenNeirongBO(
			ITDangweifawenNeirongBO dangweifawenNeirongBO) {
		this.dangweifawenNeirongBO = dangweifawenNeirongBO;
	}




	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		// TODO Auto-generated method stub
		Integer first = 0;
		Integer state = Integer.parseInt(request.getParameter("state")); 
		WorkFlowTemplate workFlowTemplate = new WorkFlowTemplate();
		String path = request.getContextPath();
		String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
		List<TDangweifawenNeirong> list;
		JSONArray array = new JSONArray();
		JSONObject object = new JSONObject();
		if (request.getParameter("start") == null) {
			list =  dangweifawenNeirongBO.selectDangweifawenPage(0, 23,state,request.getParameter("zhaiyao"),request.getParameter("wenhao"));
		} else {
			first = Integer.parseInt(request.getParameter("start"));
			list = dangweifawenNeirongBO.selectDangweifawenPage(first, 23,state,request.getParameter("zhaiyao"),request.getParameter("wenhao"));
		}
		Integer totalProperty = dangweifawenNeirongBO.selectDangweifawenTotalLine(state,request.getParameter("zhaiyao"),request.getParameter("wenhao"));
		object.put("totalProperty", totalProperty);
		for (TDangweifawenNeirong dangweifawenNeirong : list) {
			JSONObject zuzhibufaweiNeirongJSON = new JSONObject();
			zuzhibufaweiNeirongJSON.put("zhusong", dangweifawenNeirong.getZhusong());
			zuzhibufaweiNeirongJSON.put("chaosong", dangweifawenNeirong.getChaosong());
			zuzhibufaweiNeirongJSON.put("fujian", dangweifawenNeirong.getFujian());
			zuzhibufaweiNeirongJSON.put("zhaiyao", dangweifawenNeirong.getBiaoti());
			if(dangweifawenNeirong.getWenhaotype() != null )
    		{
    			String webnumber = dangweifawenNeirong.getWenhaotype().replace("[","〔");
    			webnumber = webnumber.replace("]","〕");
    			zuzhibufaweiNeirongJSON.put("wenhao", webnumber);
    		}else{
    			zuzhibufaweiNeirongJSON.put("wenhao", "");
    		}	
			String nodename = workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString()));
			if (!workFlowTemplate.isEnd(Long.valueOf(dangweifawenNeirong.getFlowid().toString()))&&!"停止".equals(nodename)&&!workFlowTemplate.isSuspend(Long.valueOf(dangweifawenNeirong.getFlowid().toString()))){
				
				if("复核".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString()))) || "核稿".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString())))){
					zuzhibufaweiNeirongJSON.put("state", "否");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+"<a href='javascript:suspend("+dangweifawenNeirong.getFlowid()+")'>中止</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp;"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;"+"&nbsp;&nbsp;<a href='javascript:end("+dangweifawenNeirong.getFlowid()+")'>完结</a>");
				}else{
					zuzhibufaweiNeirongJSON.put("state", "否");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+"<a href='javascript:suspend("+dangweifawenNeirong.getFlowid()+")'>中止</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>"+"&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp;"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;"+"&nbsp;&nbsp;<a href='javascript:end("+dangweifawenNeirong.getFlowid()+")'>完结</a>");
				}
				
			}
			else if (workFlowTemplate.isSuspend(Long.parseLong(dangweifawenNeirong.getFlowid().toString()) )){
				
				if("复核".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString()))) || "核稿".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString())))){
					zuzhibufaweiNeirongJSON.put("state", "中止");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+"<a href='javascript:resume("+dangweifawenNeirong.getFlowid()+")'>重启</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp;"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;");
				}else{
					zuzhibufaweiNeirongJSON.put("state", "中止");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+"<a href='javascript:resume("+dangweifawenNeirong.getFlowid()+")'>重启</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>"+"&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp:"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;");
				}
				
			}
			else{
				if("复核".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString()))) || "核稿".equals(workFlowTemplate.selectNodeName(Long.valueOf(dangweifawenNeirong.getFlowid().toString())))){
					zuzhibufaweiNeirongJSON.put("state", "是");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=chongxinxiugai&id="+dangweifawenNeirong.getFlowid()+"'>拟稿人修改</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp:"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;"+
					"&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=guidangform&id="+dangweifawenNeirong.getId()+"'>归档</a>");
				}else{
					zuzhibufaweiNeirongJSON.put("state", "是");
					zuzhibufaweiNeirongJSON.put("operate", "<a href='"+basePath+"documentationflow/dangweifawen/genzong.jsp?flowid="+dangweifawenNeirong.getFlowid()+
							"'>跟踪</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=selectonedoc&id="+dangweifawenNeirong.getId()+"'>查看</a>&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=chongxinxiugai&id="+dangweifawenNeirong.getFlowid()+"'>拟稿人修改</a>"+
							"&nbsp;&nbsp;<a href='"+basePath+"documentationflow/dangweifawen/fubenlist.jsp?id="+dangweifawenNeirong.getId()+"'>查看副本</a>&nbsp;&nbsp;"+
					"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatedocform&id="+dangweifawenNeirong.getId()+"'>修改正文</a>"+
					"&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updateform&id="+dangweifawenNeirong.getId()+"'>修改</a>&nbsp;&nbsp;"+"<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=updatefujianform&id="+dangweifawenNeirong.getId()+"'>修改附件</a>&nbsp;&nbsp;"+
					"&nbsp;&nbsp;<a href='"+basePath+"tjsinfo/tjsoa/dangweifawen/shenpi.do?method=guidangform&id="+dangweifawenNeirong.getId()+"'>归档</a>");
				}
				
			}
			if(dangweifawenNeirong.getIsguidang() != null){
				zuzhibufaweiNeirongJSON.put("state", "归档");
			}
			array.put(zuzhibufaweiNeirongJSON);
		}
		request.getSession().setAttribute("dangweifaadminliststart", first);
		object.put("root", array);
		response.getWriter().print(object);
		return null;
	}
	
}
